﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Flighttracker
{
    public class Baangebruik : ISearchable
    {
        public TypeBaangebruik TypeBaangebruik { get; private set; }
        public DateTime TijdBaangebruik { get; private set; }
        public Vlucht Vlucht { get; private set; }
        public Luchthaven Luchthaven { get; private set; }

        /// <summary>
        /// Constructor
        /// </summary>
        public Baangebruik(Vlucht vlucht, Luchthaven luchthaven, TypeBaangebruik typeBaangebruik, DateTime tijdBaangebruik)
        {
            this.Vlucht = vlucht;
            this.Luchthaven = luchthaven;
            this.TypeBaangebruik = typeBaangebruik;
            this.TijdBaangebruik = tijdBaangebruik;
        }

        public Baangebruik(List<string> stringList)
        {
            Vlucht = (Vlucht)Flighttracker.Instance.ZoekObject(stringList[0]);
            Vlucht.VoegBaangebruikToe(this);
            Luchthaven = (Luchthaven)Flighttracker.Instance.ZoekObject(stringList[1]);
            Luchthaven.VoegBaangebruikToe(this);
            if (String.Equals(stringList[2], "AANKOMST", StringComparison.CurrentCultureIgnoreCase)) { TypeBaangebruik = TypeBaangebruik.AANKOMST; }
            else if (String.Equals(stringList[2], "VERTREK", StringComparison.CurrentCultureIgnoreCase)) { TypeBaangebruik = TypeBaangebruik.VERTREK; }
            TijdBaangebruik = DateTime.ParseExact(stringList[3], "d-M-yyyy H:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
        }

        public bool ZoekUniekID(string id)
        {
            if (String.Format("{0} {1}", TijdBaangebruik.ToString(), TypeBaangebruik.ToString()) == id)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
}